package cn.devzyh.oms.coms.flow.executor;

import cn.devzyh.oms.common.core.util.R;
import cn.devzyh.oms.coms.flow.context.FlowContext;

/**
 * 工作流节点基础类
 *
 * @author devzyh
 * @date 2024-02-26
 */
public interface FlowNode {

	/**
	 * 正向执行流程
	 *
	 * @param ctx
	 */
	R process(FlowContext ctx);

	/**
	 * 回滚执行流程
	 *
	 * @param ctx
	 */
	default R rollback(FlowContext ctx) {
		return R.ok();
	}

}